<?php

	
class Visitas extends CI_Controller {
	


	
function index($idObra)
{
	
		
$this->load->helper(array('form', 'url','date'));
$this->load->library('form_validation');

$this->load->model('UsuarioPerfil_modelo','','TRUE');
$this->load->model('Usuario_modelo','','TRUE');


$this->load->model('Visita_modelo','','TRUE');
$this->load->model('Deficiencia_modelo','','TRUE');
$this->load->model('MedidaCorrectora_modelo','','TRUE');

$this->load->model('Subcontrata_modelo','','TRUE');
$this->load->model('Obra_modelo','','TRUE');
$this->load->model('Fecha_modelo','','TRUE');
$this->load->model('Historico_modelo','','TRUE');
$this->load->model('Trabajador_modelo','','TRUE');
$this->load->model('Version_modelo','','TRUE');




$empresas = $this->Subcontrata_modelo->listado();

$this->Obra_modelo->sumarVisita();

$obra=$this->Obra_modelo->datosObra($idObra);

$data['defA']=$this->Deficiencia_modelo->listado_defAbiertas($idObra);



 $data['results']=$this->MedidaCorrectora_modelo->listado_medidas();
          
      $id=$this->session->userdata('id');
                 $data['info']=$this->Usuario_modelo->datos_tecnico($id);
         


foreach($empresas as $item){
	$emp[]= array ('idSubcontrata'=> $item -> idSubcontrata,
	'nombre'=>$item-> nombreSub, 'descripcion'=> $item->descripcion);
}

foreach($obra as $item){
	$obr[]= array ('idObra'=> $item -> idObra,
	'nombre'=>$item-> nombreObra,'ubicacion'=> $item->ubicacion,'nombrePromotor'=> $item ->nombrePromotor,'nombreContrata'=> $item ->nombreContrata,'nombreSub'=> $item ->nombreSub,'numVisitas'=> $item ->numVisitas);
}

$fecha = date("d-m-Y"); 


$date = strtotime($fecha);
$anyo=date("Y", $date); 
$mes= date("m", $date);
$dia= date("d", $date); 




    $dias=$this->Fecha_modelo->get_dias();
    $meses=$this->Fecha_modelo->get_meses();
   $anyos=$this->Fecha_modelo->get_anyos();
   
 
   
        
foreach($dias as $item){
	$days[]= array ('dia'=> $item -> dia);
} 

foreach($meses as $item){
	$months[]= array ('valorMes'=> $item -> valorMes,'mes'=> $item-> mes);
} 


foreach($anyos as $item){
	$years[]= array ('anyo'=> $item -> anyo);
} 



 $hora=$this->Fecha_modelo->get_hora();
   $minuto=$this->Fecha_modelo->get_minuto();
   
  
   foreach($hora as $item){
	$horas[]= array ('hora'=> $item ->hora);
} 


foreach($minuto as $item){
	$minutos[]= array ('minuto'=> $item -> minuto);
} 



$horaDur=$this->Fecha_modelo->get_horaDur();
$minutoDur=$this->Fecha_modelo->get_minutoDur();



   foreach($horaDur as $item){
	$horasDur[]= array ('horaDur'=> $item ->horaDur);
} 


foreach($minutoDur as $item){
	$minutosDur[]= array ('minutoDur'=> $item -> minutoDur);
} 


$horaIni=  date("H:i");  


$time = strtotime($horaIni);
$horaI=date("H", $time); 
$minutoI= date("i", $time);
 


$data['anyo']=$anyo;
$data['mes']=$mes;
$data['dia']=$dia;



$data['horaI']=$horaI;
$data['minutoI']=$minutoI;



$data['empresas']=$emp;
$data['obra']=$obr;
$data['fecha']=$fecha;
$data['horaIni']=$horaIni;




$data['dias']= $days;
$data['meses']= $months;
$data['anyos']= $years;

$data['horas']=$horas;
$data['minutos']=$minutos;

$data['horasDur']=$horasDur;
$data['minutosDur']=$minutosDur;



 $idVisita=$this->Visita_modelo->crear_visita($dia,$mes,$anyo,$horaI,$minutoI,$idObra);

$data['idVisita']=$idVisita;
$data['idObra']=$idObra;


$ids=$this->Deficiencia_modelo->listado_idAbiertas();
foreach($ids as $item){
	$this->Historico_modelo->insertar_historico($item->idDeficiencia,$idVisita);
	
}

$responsables=$this->Trabajador_modelo->datos_responsables();


if($responsables==null){
$this->load->view('sinresponsable',$data);
	
	
}else{
	
   
      $id=$this->session->userdata('id');
      
	$result2= $this->UsuarioPerfil_modelo-> listado_porUsuario($id);
        foreach($result2 as $row2){
        	
        	$idUsu=$row2->idPerfil; 
        
        }
        
        if($idUsu==1){

$this->load->view('form_visita',$data);

        }else {
        	
        	  
         $result = $this ->Obra_modelo-> datosObra($idObra);
         
      
         $data['datosObra']=$result;
         
        if($this->Version_modelo->obtener_version()>0){
        	$this->load->view('form_visita_tec_m',$data);
        	   		
   	}else {
        	$this->load->view('form_visita_tec',$data);
   		   		
   	}
        	
        	
        }


}

	}
	
	
function crearVisita($idVisita){
	

	
	
	
	$this->mostrarParte($idVisita);
	

	
	
}


function modificarEstado($idMed,$idVisita){
	
	$this->load->model('MedidaCorrectora_modelo','','TRUE');
	$this->load->model('Historico_modelo','','TRUE');
	
	
	$idDef=$this->MedidaCorrectora_modelo->obtener_deficiencia($idMed);
	
	
	$this->MedidaCorrectora_modelo->cambiarEstado($idMed,$idVisita);
	

	
	$this->mostrarInfo3($idVisita);
	
	
	
	
}
	
	
	
	function maquinaria($idM,$idV){

		
		
		$this->load->helper(array('form', 'url','date'));
		$this->load->library('form_validation');
	
		
		$this->load->model('Maquinaria_modelo','','TRUE');
		$this->load->model('Visita_modelo','','TRUE');
$this->load->model('Subcontrata_modelo','','TRUE');
$this->load->model('Obra_modelo','','TRUE');
		$this->load->model('Version_modelo','','TRUE');




$maquinas=$this->Maquinaria_modelo->listadoMaquinas();
$equipos=$this->Maquinaria_modelo->listadoEquipos();
$mediosAux=$this->Maquinaria_modelo->listadoMedios();


	foreach($maquinas as $item){
	$maq[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

foreach($equipos as $item){
	$eqp[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

foreach($mediosAux as $item){
	$md[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

$data['maquinas']=$maq;
$data['equipos']=$eqp;
$data['mediosAux']=$md;
$data['modi']=0;


		if($idM==1){
			
$data['maq']=$this->Maquinaria_modelo->listado_maquinasParte($idV);
	
		$data['idVisita']=$idV;
		if($this->Version_modelo->obtener_version()>0){
		$this->load->view('form_maquinas_m',$data);
			   		
   	}else {
		$this->load->view('form_maquinas',$data);
   		   		
   	}
			
		
	
	
	}else if($idM==2 ){
			
$data['equi']=$this->Maquinaria_modelo->listado_equiposParte($idV);
		
	$data['idVisita']=$idV;
		if($this->Version_modelo->obtener_version()>0){
$this->load->view('form_equipos_m',$data);			   		
   	}else {
$this->load->view('form_equipos',$data);   		   		
   	}


		
		}else if($idM==3 ){
			
			$data['med']=$this->Maquinaria_modelo->listado_mediosParte($idV);
			
			
		  $data['idVisita']=$idV;
					if($this->Version_modelo->obtener_version()>0){
			$this->load->view('form_medios_m',$data);		
					   	}else {
			$this->load->view('form_medios',$data);		
   		   	}
		  
			
		

			}
			




	}
	
	
	
	
function maquinaria2($idM,$idV){

		
		
		$this->load->helper(array('form', 'url','date'));
		$this->load->library('form_validation');
	
		
		$this->load->model('Maquinaria_modelo','','TRUE');
		$this->load->model('Visita_modelo','','TRUE');
$this->load->model('Subcontrata_modelo','','TRUE');
$this->load->model('Obra_modelo','','TRUE');
$this->load->model('Version_modelo','','TRUE');
		



$maquinas=$this->Maquinaria_modelo->listadoMaquinas();
$equipos=$this->Maquinaria_modelo->listadoEquipos();
$mediosAux=$this->Maquinaria_modelo->listadoMedios();


	foreach($maquinas as $item){
	$maq[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

foreach($equipos as $item){
	$eqp[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

foreach($mediosAux as $item){
	$md[]= array ('idMaquinaria'=> $item -> idMaquinaria,
	'nombreMaq'=>$item-> nombreMaq, 'tipo'=> $item->tipo);
}

$data['maquinas']=$maq;
$data['equipos']=$eqp;
$data['mediosAux']=$md;
$data['modi']=1;



		if($idM==1){
			
$data['maq']=$this->Maquinaria_modelo->listado_maquinasParte($idV);
	
		$data['idVisita']=$idV;
		
		if($this->Version_modelo->obtener_version()>0){
		$this->load->view('form_maquinas_m',$data);
			   		
   	}else {
		$this->load->view('form_maquinas',$data);
   		   		
   	}
		
			
		
	
	
	}else if($idM==2 ){
			
$data['equi']=$this->Maquinaria_modelo->listado_equiposParte($idV);
		
	$data['idVisita']=$idV;
	
		if($this->Version_modelo->obtener_version()>0){
$this->load->view('form_equipos_m',$data);			   		
   	}else {
$this->load->view('form_equipos',$data);   		   		
   	}
	



		
		}else if($idM==3 ){
			
			$data['med']=$this->Maquinaria_modelo->listado_mediosParte($idV);
			
			
		  $data['idVisita']=$idV;
		 
		  
		  
				if($this->Version_modelo->obtener_version()>0){
			$this->load->view('form_medios_m',$data);		
					   	}else {
			$this->load->view('form_medios',$data);		
   		   	}
		  
			
		

			}
			




	}
	
	
	
	
	
	

	
	
			
	function mostrarParte($idVisita){
		
		$this->load->helper(array('form', 'url','date'));
		$this->load->library('form_validation');
		
		$this->load->model('Visita_modelo','','TRUE');
		$this->load->model('Maquinaria_modelo','','TRUE');
		$this->load->model('Deficiencia_modelo','','TRUE');
		$this->load->model('MedidaCorrectora_modelo','','TRUE');
		
		
		$data['datosVis']=$this->Visita_modelo->listado_visitaParte($idVisita);
				
		$maquinas=$this->Maquinaria_modelo->listado_maquinasParte($idVisita);
		$equipos=$this->Maquinaria_modelo->listado_equiposParte($idVisita);
		$medios=$this->Maquinaria_modelo->listado_mediosParte($idVisita);
				
$defMc= $this->Deficiencia_modelo->def_visita($idVisita);

 $data['results']=$this->MedidaCorrectora_modelo->listado_medidas();

		
			$data['defA']=$this->Deficiencia_modelo->listado_defAb($idVisita);
 
		
		
		if($maquinas==NULL)
		$mq[]=null;
		else{
	foreach($maquinas as $maq){
			$mq[]= array ('nombreMaq'=> $maq-> nombreMaq );
			
		}
		}
		
		if($equipos==NULL)
		$eq[]=null;
		else{
		
		foreach($equipos as $equ){
			$eq[]= array ('nombreMaq'=> $equ-> nombreMaq );
			
		}
		}
		
		if($medios==NULL)
		$md[]=null;
		else{
		foreach($medios as $med){
			$md[]= array ('nombreMaq'=> $med -> nombreMaq );
			
		}
		}
		
		
		
	
		if($defMc==NULL)
		$dm[]=null;
		else{

foreach($defMc as $def){
			
			
			$dm[]= array ('idDeficiencia'=> $def -> idDeficiencia,'nombreDef'=> $def -> nombreDef,'estadoDef'=> $def -> estadoDef,
			'entidad'=> $def ->entidad,'fecha'=>$def->fecha,'nombreVisita'=>$def->nombreVisita);
			
		}
		}
		
		
		
$data['up']=$this->Visita_modelo->fotos_visita($idVisita);
		
		
	
		$data['maquinas']=$mq;
		$data['equipos']=$eq;
		$data['medios']=$md;
		$data['defMc']=$dm;
		
	
		
		$this->load->view('vista_parte',$data);
		
		
	}
	
	
	
	
function mostrarInfo($idVisita){
	
			$this->load->model('Visita_modelo','','TRUE');
	
	
		$acc=$this->input->post('accion');
	
	
	if($acc==1){
		
		
		
	$this->Visita_modelo->actualizar_visita($idVisita);
		
		$this->maquinaria(1, $idVisita);
		
	
		
	}else if($acc==2){
		
		$this->Visita_modelo->actualizar_visita($idVisita);
		$this->maquinaria(2, $idVisita);
		
	
	}else if($acc==3) {
		
		$this->Visita_modelo->actualizar_visita($idVisita);
		$this->maquinaria(3, $idVisita);
		
		
		
	}else{
		
		$this->load->helper(array('form', 'url','date'));
		$this->load->library('form_validation');
		$this->load->model('UsuarioPerfil_modelo','','TRUE');
		
		$this->load->model('Visita_modelo','','TRUE');
		$this->load->model('Obra_modelo','','TRUE');
				$this->load->model('Usuario_modelo','','TRUE');
		
		
		$this->load->model('Maquinaria_modelo','','TRUE');
		$this->load->model('Deficiencia_modelo','','TRUE');
		$this->load->model('MedidaCorrectora_modelo','','TRUE');
		$this->load->model('Historico_modelo','','TRUE');
				$this->load->model('Version_modelo','','TRUE');
		
		
		
		$this->Visita_modelo->actualizar_visita($idVisita);
		
		
		    $id=$this->session->userdata('id');
                 $data['info']=$this->Usuario_modelo->datos_tecnico($id);
         
		
		$data['datosVis']=$this->Visita_modelo->listado_visitaParte($idVisita);
		$data['maqse']=$this->Visita_modelo->maquinas_especiales($idVisita);
		$data['eqse']=$this->Visita_modelo->equipos_especiales($idVisita);
		
		$data['medse']=$this->Visita_modelo->medios_especiales($idVisita);
				
		
		$maquinas=$this->Maquinaria_modelo->listado_maquinasParte($idVisita);
		$equipos=$this->Maquinaria_modelo->listado_equiposParte($idVisita);
		$medios=$this->Maquinaria_modelo->listado_mediosParte($idVisita);
				
$data['defMc'] =$this->Deficiencia_modelo->def_visita($idVisita);

 $data['results']=$this->MedidaCorrectora_modelo->listado_medidas();

		
		//	$data['defA']=$this->Deficiencia_modelo->listado_defAb($idVisita);
		
 $idObra= $this->Visita_modelo->getObraVisita($idVisita);

 
	foreach($idObra as $id){
		$data['defA']=$this->Historico_modelo->listadoDefAbiertas($id->idObra);
	}
		
		
		if($maquinas==NULL)
		$mq[]=null;
		else{
	foreach($maquinas as $maq){
			$mq[]= array ('nombreMaq'=> $maq-> nombreMaq );
			
		}
		}
		
		if($equipos==NULL)
		$eq[]=null;
		else{
		
		foreach($equipos as $equ){
			$eq[]= array ('nombreMaq'=> $equ-> nombreMaq );
			
		}
		}
		
		if($medios==NULL)
		$md[]=null;
		else{
		foreach($medios as $med){
			$md[]= array ('nombreMaq'=> $med -> nombreMaq );
			
		}
		}
		
		
		

		
		
$data['up']=$this->Visita_modelo->fotos_visita($idVisita);
		
		
		
		$data['maquinas']=$mq;
		$data['equipos']=$eq;
		$data['medios']=$md;
	
		$data['idVisita']=$idVisita;
		
		
		
		
	$id=$this->session->userdata('id');
      
	$result2= $this->UsuarioPerfil_modelo-> listado_porUsuario($id);
        foreach($result2 as $row2){
        	
        	$idUsu=$row2->idPerfil; 
        
        }
        
        if($idUsu==1){

		$this->load->view('vista_info',$data);
        	        	
        }else {
        	
        	foreach ($idObra as $idO){
        	
        	  
         $result = $this ->Obra_modelo->datosObra($idO->idObra);
         
      
         $data['datosObra']=$result;
         
        	if($this->Version_modelo->obtener_version()>0){
		$this->load->view('vista_info_tec_m',$data);
        		   		
   	}else {
		$this->load->view('vista_info_tec',$data);
   		   		
   	}
        	}
                 	        	
        	
        }
		
		
		
		
		
	   }
	}
	
	
	
	
function mostrarInfo2($idVisita){
	
		$this->load->model('UsuarioPerfil_modelo','','TRUE');
	
			$this->load->model('Visita_modelo','','TRUE');
			$this->load->helper(array('form', 'url'));
	
	
			$idObra= $this->Visita_modelo->getObraVisita($idVisita);
			
		$acc=$this->input->post('accion');
	
	
	if($acc==1){
		
		
		
	$this->Visita_modelo->actualizar_visita2($idVisita);
		
		$this->maquinaria2(1, $idVisita);
		
	}else if($acc==2){
		
		$this->Visita_modelo->actualizar_visita2($idVisita);
		$this->maquinaria2(2, $idVisita);
		
	
	}else if($acc==3) {
		
		$this->Visita_modelo->actualizar_visita2($idVisita);
		$this->maquinaria2(3, $idVisita);
		
		
		
	}else{
		
		
		
		$this->Visita_modelo->actualizar_modificar($idVisita);
		
	$id=$this->session->userdata('id');
      
	$result2= $this->UsuarioPerfil_modelo-> listado_porUsuario($id);
        foreach($result2 as $row2){
        	
        	$idPerfil=$row2->idPerfil; 
        
        }
        
        foreach ($idObra as $idO){
		
        if($idPerfil==1){
		redirect('list_visitas/index/'.$idO->idObra.'');
        } else {
       redirect('list_visitas/list_vis_tecn/'.$idO->idObra.'');
        	
        }
        }
		
		
	}
		
	}
	
	
function mostrarInfo3($idVisita){
        
        
                
                $this->load->helper(array('form', 'url','date'));
                $this->load->library('form_validation');
                
                $this->load->model('Visita_modelo','','TRUE');
                $this->load->model('UsuarioPerfil_modelo','','TRUE');
                $this->load->model('Obra_modelo','','TRUE');
                                $this->load->model('Usuario_modelo','','TRUE');
                
                
                $this->load->model('Maquinaria_modelo','','TRUE');
                $this->load->model('Deficiencia_modelo','','TRUE');
                $this->load->model('MedidaCorrectora_modelo','','TRUE');
                $this->load->model('Historico_modelo','','TRUE');
                $this->load->model('Version_modelo','','TRUE');
                
                
                
                
		    $id=$this->session->userdata('id');
                 $data['info']=$this->Usuario_modelo->datos_tecnico($id);
                
                $data['datosVis']=$this->Visita_modelo->listado_visitaParte($idVisita);
$data['maqse']=$this->Visita_modelo->maquinas_especiales($idVisita);
		$data['eqse']=$this->Visita_modelo->equipos_especiales($idVisita);
		
		$data['medse']=$this->Visita_modelo->medios_especiales($idVisita);
				                
                
                $maquinas=$this->Maquinaria_modelo->listado_maquinasParte($idVisita);
                $equipos=$this->Maquinaria_modelo->listado_equiposParte($idVisita);
                $medios=$this->Maquinaria_modelo->listado_mediosParte($idVisita);
                                
$data['defMc'] =$this->Deficiencia_modelo->def_visita($idVisita);
                
 $data['results']=$this->MedidaCorrectora_modelo->listado_medidas();

                
                
         $idObra =$this->Visita_modelo->getObraVisita($idVisita);
 
        
            
	foreach($idObra as $id){
		$data['defA']=$this->Historico_modelo->listadoDefV($idVisita,$id->idObra);
	}
		
                
                
                
                if($maquinas==NULL)
                $mq[]=null;
                else{
        foreach($maquinas as $maq){
                        $mq[]= array ('nombreMaq'=> $maq-> nombreMaq );
                        
                }
                }
                
                if($equipos==NULL)
                $eq[]=null;
                else{
                
                foreach($equipos as $equ){
                        $eq[]= array ('nombreMaq'=> $equ-> nombreMaq );
                        
                }
                }
                
                if($medios==NULL)
                $md[]=null;
                else{
                foreach($medios as $med){
                        $md[]= array ('nombreMaq'=> $med -> nombreMaq );
                        
                }
                }
                
                
                
        
                
                
                
$data['up']=$this->Visita_modelo->fotos_visita($idVisita);
                
                
                
                $data['maquinas']=$mq;
                $data['equipos']=$eq;
                $data['medios']=$md;
        
                $data['idVisita']=$idVisita;
                

		
	$id=$this->session->userdata('id');
      
	$result2= $this->UsuarioPerfil_modelo-> listado_porUsuario($id);
        foreach($result2 as $row2){
        	
        	$idUsu=$row2->idPerfil; 
        
        }
        
        
        if($idUsu==1){

		$this->load->view('vista_info',$data);
        	        	
        }else {
        	
        	  foreach($idObra as $id){
         $result = $this ->Obra_modelo-> datosObra($id->idObra);
        	  }
      
         $data['datosObra']=$result;
         
        
        	if($this->Version_modelo->obtener_version()>0){
		$this->load->view('vista_info_tec_m',$data);
        		   		
   	}else {
		$this->load->view('vista_info_tec',$data);
   		   		
   	}
                 	        	
        	
        }
                
                
        }
        
        
        
        
	
	

}